package com.meida.module.bus.client.entity.srmapi.basedata;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.meida.common.mybatis.annotation.TableAlias;
import com.meida.common.mybatis.base.entity.AbstractEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jboss.logging.Field;

import java.math.BigDecimal;
import java.util.Date;

/**
 * srm采购订单数据
 *
 * @author flyme
 * @date 2021-03-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
//@TableName("srm_purchaseorder")
@TableName("D_CP_PURCHASEORDER")
@TableAlias("purchaseorder")
@ApiModel(value="SrmPurchaseorder对象", description="srm采购订单数据")
public class SrmPurchaseorder extends AbstractEntity {

private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "主键")
    private BigDecimal purchaseorderId;

    @ApiModelProperty(value = "采购订单号")
    private String purchaseorderNo;

    @ApiModelProperty(value = "订单类型")
    private String purchaseorderType;

    @ApiModelProperty(value = "订单号")
    private String erppurchaseOrderno;

    @ApiModelProperty(value = "订单日期")
    private Date purchaseorderTime;

    @ApiModelProperty(value = "采购组织名称")
    private String purchasingOrgName;

    @ApiModelProperty(value = "供应商编码")
    private String vendorCode;

    @ApiModelProperty(value = "供应商名称")
    private String vendorName;

    @ApiModelProperty(value = "公司编码")
    private String companyCode;

    @ApiModelProperty(value = "公司名称")
    private String companyName;

    @ApiModelProperty(value = "货币编码")
    private String currencyCode;

    @ApiModelProperty(value = "货币名称")
    private String currencyName;

    @ApiModelProperty(value = "货币汇率")
    private BigDecimal currencyRate;

    @ApiModelProperty(value = "订单金额")
    private BigDecimal totalAmount;

    @ApiModelProperty(value = "附件ID")
    private BigDecimal uploadfileGroupId;

    @ApiModelProperty(value = "订单状态")
    private BigDecimal purchaseorderState;

    @ApiModelProperty(value = "审核状态")
    private BigDecimal purchaseorderFlowState;

    @ApiModelProperty(value = "流程状态")
    private BigDecimal purchaseorderCheckState;

    @ApiModelProperty(value = "ERP同步标识")
    private BigDecimal erpSynState;

    @ApiModelProperty(value = "创建方式")
    private BigDecimal createType;

    @ApiModelProperty(value = "供应商查看标识")
    private BigDecimal viewFlag;

    @ApiModelProperty(value = "ERP返回信息")
    private String erpReturnMsg;

    @ApiModelProperty(value = "先确认后审核标识")
    private BigDecimal checkFirst;

    @ApiModelProperty(value = "isViewPriceFlag")
    private BigDecimal isViewPriceFlag;

    @ApiModelProperty(value = "客户端编码")
    private String clientCode;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "创建人ID")
    private BigDecimal createId;

    @ApiModelProperty(value = "创建人姓名")
    private String createName;

    @ApiModelProperty(value = "更新人ID")
    private BigDecimal modifyId;

    @ApiModelProperty(value = "更新人姓名")
    private String modifyName;

    @ApiModelProperty(value = "更新时间")
    private Date modifyTime;

    @ApiModelProperty(value = "采购组编码")
    private String purchasingGroupCode;

    @ApiModelProperty(value = "采购组名称")
    private String purchasingGroupName;

    @ApiModelProperty(value = "供应商编码ERP")
    private String vendorerpCode;

    @ApiModelProperty(value = "供应商可查看标识")
    private BigDecimal isvendorView;

    @ApiModelProperty(value = "已收货量")
    private BigDecimal receiveQty;

    @ApiModelProperty(value = "可送数量")
    private BigDecimal cansendQty;

    @ApiModelProperty(value = "是否撤销审批")
    private BigDecimal isrevocationCheck;

    @ApiModelProperty(value = "采购组织")
    private String purchasingorgCode;

    @ApiModelProperty(value = "返回值")
    private String returnValue;

    @ApiModelProperty(value = "供应商确认时间")
    private Date vendorconfirmTime;

    @ApiModelProperty(value = "国际贸易术语")
    private String internationlRradeterm;

    @ApiModelProperty(value = "国际评论")
    private String internationlRradeRemark;

    @ApiModelProperty(value = "税率编码")
    private String taxrateCode;

    @ApiModelProperty(value = "订单发布时间")
    private Date orderReleaseTime;

    @ApiModelProperty(value = "是否紧急")
    private BigDecimal urgent;

    @ApiModelProperty(value = "合同编码")
    private String contractNo;

    @ApiModelProperty(value = "合同名称")
    private String contractName;

    @ApiModelProperty(value = "项目编码")
    private String projectNo;

    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @ApiModelProperty(value = "工程包号")
    private String engineeringNo;

    @ApiModelProperty(value = "联系人")
    private String contacts;

    @ApiModelProperty(value = "联系人电话")
    private String contactPhone;

    @ApiModelProperty(value = "税率")
    private BigDecimal taxrateValue;

    @ApiModelProperty(value = "交货地点")
    private String deliveryPlace;

    @ApiModelProperty(value = "代购商id")
    private BigDecimal vendoragentId;

    @ApiModelProperty(value = "代购商编码")
    private String vendoragentCode;

    @ApiModelProperty(value = "代购商名称")
    private String vendoragentName;

    @ApiModelProperty(value = "项目材料员")
    private String projectStuffer;

    @ApiModelProperty(value = "材料员邮箱")
    private String projectStufferMail;

    @ApiModelProperty(value = "材料员联系电话")
    private String projectStufferPhone;

    @ApiModelProperty(value = "指定收货人")
    private String receiver;

    @ApiModelProperty(value = "收货人邮箱")
    private String receiverMail;

    @ApiModelProperty(value = "收货人联系电话")
    private String receiverPhone;

    @ApiModelProperty(value = "预算总金额")
    private BigDecimal budgetAmount;

    @ApiModelProperty(value = "承诺占用金额")
    private BigDecimal promiseAmount;

    @ApiModelProperty(value = "实际成本金额")
    private BigDecimal actualAmount;

    @ApiModelProperty(value = "累计变更未税金额")
    private BigDecimal changeAmount;

    @ApiModelProperty(value = "合同总金额")
    private BigDecimal contractAmount;

    @ApiModelProperty(value = "折扣总金额")
    private BigDecimal otherCharge;

    @ApiModelProperty(value = "折扣总金额")
    private BigDecimal discountAmount;

    @ApiModelProperty(value = "付款条件编码")
    private String paymenttypeCode;

    @ApiModelProperty(value = "付款条件名称")
    private String paymenttypeName;

    @ApiModelProperty(value = "需求申请人编码")
    private String proposerCode;

    @ApiModelProperty(value = "需求申请人")
    private String proposer;

    @ApiModelProperty(value = "订购比例%")
    private BigDecimal subScriptionRatio;

    @ApiModelProperty(value = "工作范围")
    private String workingScope;

    @ApiModelProperty(value = "施工周期")
    private String constructionPeriod;

    @ApiModelProperty(value = "指定收货人")
    private String receiverCode;

    @ApiModelProperty(value = "项目材料员编码")
    private String projectStufferCode;

    @ApiModelProperty(value = "采购员")
    private String purchaseuserName;

    @ApiModelProperty(value = "采购员ID")
    private BigDecimal purchaseuserId;

    @ApiModelProperty(value = "是否有合同编码标识")
    private BigDecimal contractNoflag;

    @ApiModelProperty(value = "已有订购金额")
    private String subScription;

    @ApiModelProperty(value = "累计变更未税金额")
    private BigDecimal changeNotaxAmount;

    @ApiModelProperty(value = "合同总金额")
    private BigDecimal contractallNotaxAmount;

    @ApiModelProperty(value = "订单未税金额")
    private BigDecimal orderNotaxAmount;

    @ApiModelProperty(value = "auditorIds")
    private String auditorIds;

    @ApiModelProperty(value = "专业分类")
    private String materialKindCode;

}
